package PrzestrzenDyskretna;

import Narzedzia.ListaElementow;
import Zbiory.Element;

public class DopelnienieDyskretnyZbiorRozmyty extends DyskretnyZbiorRozmyty {

	public DopelnienieDyskretnyZbiorRozmyty(DyskretnyZbiorRozmyty zbior) {
		super(zbior.getPrzestrzen(), wybierzElementyDopelnienia(zbior));
	}

	private static ListaElementow<Element> wybierzElementyDopelnienia(DyskretnyZbiorRozmyty zbior) {
		ListaElementow<Element> nowaLista = new ListaElementow<Element>();
		for (Element element : zbior.getElementy()) {
			nowaLista.add(new Element(element.getWartosc(), 1.0f - zbior.getPrzynaleznosc(element)));
		}
		for(Element elemPrzestrzeni : zbior.getPrzestrzen().getElementy()){
			if(nowaLista.contains(elemPrzestrzeni) == false){
				nowaLista.add(new Element(elemPrzestrzeni.getWartosc(), 1.0f));
			}
		}
		return nowaLista;
	}

}
